2025-03-31 18:04:18,606 - INFO - Num classes: 3
2025-03-31 18:10:09,332 - INFO - Class weights: tensor([0.5455, 2.7088, 1.2537], device='cuda:0')
2025-03-31 18:10:09,334 - INFO - Model architecture:
HyperspectralLogisticRegressionModel(
  (linear): Sequential(
    (0): LinearBlock(
      (block): Sequential(
        (0): Linear(in_features=1080, out_features=20, bias=True)
        (1): BatchNorm1d(20, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
        (2): LeakyReLU(negative_slope=0.1)
        (3): Dropout(p=0.0, inplace=False)
      )
    )
    (1): LinearBlock(
      (block): Sequential(
        (0): Linear(in_features=20, out_features=20, bias=True)
        (1): BatchNorm1d(20, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
        (2): LeakyReLU(negative_slope=0.1)
        (3): Dropout(p=0.0, inplace=False)
      )
    )
    (2): Linear(in_features=20, out_features=3, bias=True)
  )
)
2025-03-31 18:10:09,334 - INFO - Using cuda device
2025-03-31 18:19:29,556 - INFO - Epoch: 0/100. Training time: 374.059
2025-03-31 18:19:29,559 - INFO - Training Metrics...
2025-03-31 18:19:29,560 - INFO - {'loss': 0.9507760230902653, 'f1': 50.87815591514925, 'acc': 57.95178043351098, 'precision': 52.854739973311204, 'recall': 57.63924392678539, 'balanced acc': 57.63924392678539}
2025-03-31 18:19:29,560 - INFO - Validation Metrics... Inference time: 186.154
2025-03-31 18:19:29,560 - INFO - {'loss': 0.8890138910366938, 'f1': 50.62297701638315, 'acc': 58.149850986067506, 'precision': 57.679615051249364, 'recall': 59.1434243871134, 'balanced acc': 59.1434243871134}
2025-03-31 18:19:29,560 - INFO - ==================================================
2025-03-31 19:06:11,062 - INFO - Epoch: 5/100. Training time: 372.344
2025-03-31 19:06:11,064 - INFO - Training Metrics...
2025-03-31 19:06:11,065 - INFO - {'loss': 0.8330613864455253, 'f1': 57.45699903924335, 'acc': 64.7134062621864, 'precision': 58.78799617004754, 'recall': 62.22325221814716, 'balanced acc': 62.22325221814716}
2025-03-31 19:06:11,065 - INFO - Validation Metrics... Inference time: 190.986
2025-03-31 19:06:11,065 - INFO - {'loss': 0.7351653346648583, 'f1': 56.75869567993031, 'acc': 67.22373143969126, 'precision': 61.21057672476684, 'recall': 64.15398004097209, 'balanced acc': 64.15398004097209}
2025-03-31 19:06:11,065 - INFO - ==================================================
2025-03-31 19:53:31,488 - INFO - Epoch: 10/100. Training time: 373.541
2025-03-31 19:53:31,491 - INFO - Training Metrics...
2025-03-31 19:53:31,491 - INFO - {'loss': 0.7799149091076699, 'f1': 60.61846116897226, 'acc': 68.01813032139607, 'precision': 61.815155492674734, 'recall': 67.33977704346285, 'balanced acc': 67.33977704346285}
2025-03-31 19:53:31,491 - INFO - Validation Metrics... Inference time: 189.561
2025-03-31 19:53:31,492 - INFO - {'loss': 0.6344155577512888, 'f1': 59.836884619491784, 'acc': 72.18950831534538, 'precision': 64.48687970715956, 'recall': 65.62314589378559, 'balanced acc': 65.62314589378559}
2025-03-31 19:53:31,492 - INFO - ==================================================
2025-03-31 20:40:26,264 - INFO - Epoch: 15/100. Training time: 374.271
2025-03-31 20:40:26,267 - INFO - Training Metrics...
2025-03-31 20:40:26,267 - INFO - {'loss': 0.7495017173183951, 'f1': 62.52447868643982, 'acc': 69.10335491680749, 'precision': 64.20945394840733, 'recall': 68.90582470406996, 'balanced acc': 68.90582470406996}
2025-03-31 20:40:26,267 - INFO - Validation Metrics... Inference time: 192.269
2025-03-31 20:40:26,268 - INFO - {'loss': 0.5979195374708909, 'f1': 61.16770003853196, 'acc': 74.1418667827708, 'precision': 64.87192808429228, 'recall': 66.08503180739254, 'balanced acc': 66.08503180739254}
2025-03-31 20:40:26,268 - INFO - ==================================================
2025-04-05 02:21:51,138 - INFO - Num classes: 3
2025-04-05 02:21:51,142 - INFO - Class weights: None
2025-04-05 02:21:51,257 - INFO - Model architecture:
HyperspectralLogisticRegressionModel(
  (linear): Sequential(
    (0): LinearBlock(
      (block): Sequential(
        (0): Linear(in_features=1080, out_features=20, bias=True)
        (1): BatchNorm1d(20, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
        (2): LeakyReLU(negative_slope=0.1)
        (3): Dropout(p=0.0, inplace=False)
      )
    )
    (1): LinearBlock(
      (block): Sequential(
        (0): Linear(in_features=20, out_features=20, bias=True)
        (1): BatchNorm1d(20, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
        (2): LeakyReLU(negative_slope=0.1)
        (3): Dropout(p=0.0, inplace=False)
      )
    )
    (2): Linear(in_features=20, out_features=3, bias=True)
  )
)
2025-04-05 02:21:51,258 - INFO - Using cuda device
2025-04-05 02:21:51,269 - INFO - Training parameters restored at epoch 15
2025-04-05 02:21:51,275 - INFO - Initializing final Evaluations:

